package com.ruoyi.store.service.impl;

import java.util.List;

import com.ruoyi.common.core.page.ExampleUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.store.mapper.VQrcodeMapper;
import com.ruoyi.store.domain.VQrcode;
import com.ruoyi.store.service.IVQrcodeService;
import com.ruoyi.common.core.text.Convert;
import tk.mybatis.mapper.entity.Example;

/**
 * 二维码 服务层实现
 *
 * @author Enzo
 * @date 2019-03-25
 */
@Service
public class VQrcodeServiceImpl implements IVQrcodeService
{
	@Autowired
	private VQrcodeMapper vQrcodeMapper;

	/**
	 * 查询二维码信息
	 *
	 * @param id 二维码ID
	 * @return 二维码信息
	 */
	@Override
	public VQrcode selectVQrcodeById(Long id)
	{
		return vQrcodeMapper.selectByPrimaryKey(id);
	}

	/**
	 * 查询二维码列表
	 *
	 * @param vQrcode 二维码信息
	 * @return 二维码集合
	 */
	@Override
	public List<VQrcode> selectVQrcodeList(VQrcode vQrcode)
	{
		Example example = new Example(VQrcode.class);
		Example.Criteria criteria = example.createCriteria();

		ExampleUtils.andEqualTo(criteria, "id", vQrcode.getId());
		ExampleUtils.andEqualTo(criteria, "storeId", vQrcode.getStoreId());
		ExampleUtils.andEqualTo(criteria, "qrCode", vQrcode.getQrCode());
		ExampleUtils.andEqualTo(criteria, "qrPath", vQrcode.getQrPath());
		ExampleUtils.andEqualTo(criteria, "qrName", vQrcode.getQrName());
		ExampleUtils.andBetweenDateToDate(criteria, "ctime", vQrcode.getParams().get("beginCtime"),vQrcode.getParams().get("endCtime"));
		return vQrcodeMapper.selectByExample(example);
	}

	/**
	 * 新增二维码
	 *
	 * @param vQrcode 二维码信息
	 * @return 结果
	 */
	@Override
	public int insertVQrcode(VQrcode vQrcode)
	{
		return vQrcodeMapper.insertSelective(vQrcode);
	}

	/**
	 * 修改二维码
	 *
	 * @param vQrcode 二维码信息
	 * @return 结果
	 */
	@Override
	public int updateVQrcode(VQrcode vQrcode)
	{
		return vQrcodeMapper.updateByPrimaryKeySelective(vQrcode);
	}

	/**
	 * 删除二维码对象
	 *
	 * @param ids 需要删除的数据ID
	 * @return 结果
	 */
	@Override
	public int deleteVQrcodeByIds(String ids)
	{
		Example example = new Example(VQrcode.class);
		Example.Criteria criteria = example.createCriteria();
		criteria.andIn("Id",Convert.toList(ids));
		return vQrcodeMapper.deleteByExample(example);
	}


	/**
	 * 删除二维码 单条信息
	 * @param id 删除的主键ID
	 * @return
	 */
	@Override
	public int deleteVQrcodeById(Long id){
		return vQrcodeMapper.deleteByPrimaryKey(id);
	}

}
